Method for the variable-complexity decoding of an image signal, corresponding decoding terminal, encoding method, encoding device, computer signal and programs

ABSTRACT

A method is provided decoding a digital image signal in a decoding terminal that uses a variable-complexity decoding, enabling, for at least one step in the decoding, selection of at least one decoding tool from at least two available decoding tools. The method includes the following steps: identifying from the images control images and intermediate images; applying to each of the control images, for at least one step of the decoding, at least one predetermined decoding tool imposed by the signal; applying to at least one of the intermediate images, for at least one step of the decoding, at least one decoding tool selected by the decoding terminal and not imposed by the signal.

CROSS-REFERENCE TO RELATED APPLICATIONS

This Application is a Section 371 National Stage Application ofInternational Application No. PCT/FR2008/052393, filed Dec. 19, 2008 andpublished as WO 2009/087331 on Jul. 16, 2009, not in English.

STATEMENT REGARDING FEDERALLY SPONSORED RESEARCH OR DEVELOPMENT

None.

THE NAMES OF PARTIES TO A JOINT RESEARCH AGREEMENT

None.

FIELD OF THE DISCLOSURE

The field of the disclosure is that of the encoding and decoding ofdigital signals and especially video signals or image carrying signals.

More specifically, the disclosure pertains to scalable encoding anddecoding by which decoders can adapt the decoding of a received signalto their processing capacity or to a user's requirements.

BACKGROUND OF THE DISCLOSURE

The principle of scalability, designed to provide different levels ofrebuilding from a single bitstream received by a decoder, is alreadyknown. For example, it makes it possible to propose different levels ofrebuilding of a video from the received stream. These levels ofrebuilding depend especially on the complexity of the decodingoperations to be applied.

This is the case, for example, in the current H.264 standard whichproposes scalability based on a hierarchical approach with inter-layerprediction enabling limits to be placed on redundancy between layers(see for example “SVC-Amendment 3” of the H.264/MPEG-4 AVC standard).The same information is represented at different hierarchical levelswith a progression in quality and/or in resolution.

The SVC encoder proposes scalability in the sense that each decoder canchoose the quantity of data that it will process as a function of thehierarchical levels that it chooses. The number of information pieces tobe decoded can thus be reduced, of course with a trade-off in terms ofdeterioration of the quality of images rendered.

In order to limit the complexity of decoding of a stream according to avideo standard (for example H.264), certain special applications providefor redefining certain decoding operations on the basis of less complextools. However, this redefinition of the tools used in decoding must betaken into account in the process of encoding of the stream in order toprevent the decoder from drifting. Drift is the desychronization of thedecoded images which act as reference images for the temporal predictionbetween the encoder and the decoder. If these images are not identicalat both the encoder and the decoder, then the' decoder rebuilds imageswith errors which accumulate in the course of time.

SUMMARY

The solution proposed by an exemplary embodiment of the invention doesnot have these prior-art drawbacks. An embodiment pertains to a methodfor decoding a digital image signal in a decoding terminal implementinga variable-complexity decoding making it possible, for at least one stepof the decoding, to select at least one decoding tool from among atleast two available decoding tools.

A decoding method of this kind, according to an embodiment of theinvention, comprises the following steps:

-   -   identifying first images, among said images, called control        images, and second images called intermediate images;    -   applying, to each of said control images, for at least one step        of the decoding, at least one predetermined decoding tool        dictated by said signal;    -   applying, to at least one of said intermediate images, for at        least one step of the decoding, at least one decoding tool        selected by said decoding terminal and not dictated by said        signal.

Thus, scalability in complexity at decoding is proposed, playing on thequality of the rebuilt sequence. Different decoders can implementdifferent forms of decoding according to their resources especially withrespect to intermediate images (or only some of them) withoutconstraints on the encoding of these images.

In other words, for the intermediate images, the decoding tool or toolsused for a decoding step can lead to a result different from the oneobtained by a decoding tool dictated for a control image for said stepof the decoding process.

The risks of drift are limited through control images for which all thedecoders use the same decoding tools, namely those taken into account bythe decoding.

The control images can be identified explicitly (information present inthe image signal) or implicitly (each decoder being capable in principleof identifying these images in the stream that it receives).

An embodiment of the invention can be applied to many types of signals,or streams, especially video signals or streams, received in variousterminals such as radio-telephones, television decoders (for exampleset-top boxes), multimedia terminals or computer terminals.

Should said signal comprise firstly non-degradable information (forexample “I” images or images of a given hierarchical level) and secondlydegradable information (for example “P” or “B” images or images of ahigher hierarchical level), on the basis of at least one piece ofinformation, said identification step considers at least saidnon-degradable information to be control images.

Should said signal be formed by images having a hierarchical temporalprediction structure, each image of a temporal hierarchical level beingencoded by spatial prediction or by temporal prediction on the basis ofat least one image of the same temporal level or of the previoustemporal level in the hierarchy, then said identification step canconsider at least said images of a pre-determined temporal level(forming the non-degradable information for the decoding of the higherhierarchical levels) to be control images.

According to a first embodiment of the invention, said identificationstep comprises a step for the reading, in said signal, of at least onepiece of information identifying said control images.

This information enables a decoder to distinguish the images in thestream having an imposed processing. According to another embodiment,the identification may be implicit and not require a piece ofidentification information of this kind (for example because theterminal knows in principle which are the control images).

Said identification step may, depending on the embodiments, also includea step for reading, in said signal, at least one piece of processinginformation for at least one of said control images, specifying saidpredetermined decoding tool or tools to be applied to said controlimage.

It is thus possible to dictate distinct processing operations todifferent control images, for example depending on particularcharacteristics of these images (in terms of movement, type of imageetc).

In a particular approach of an embodiment of the invention, the methodselectively implements a plurality of sequences of decoding tools eachcomprising at least one of said tools and said applications steps use,for each of said images, one of said sequences of decoding tools.

-   -   Said tools may especially belong to the group comprising:    -   spatial prediction tools taking account of all or part of the        frequency coefficients of at least one part of at least one        image;    -   temporal prediction tools using interpolation filters of        different sizes;    -   tools for taking account of pixel or subpixel motion;    -   block effect filtering tools;    -   motion compensation tools using different motion models;    -   image synthesis tools;    -   at least two tools providing for a same decoding function and        using different levels of binary representation.

The tools available in the terminals can therefore be varied and adaptedto different types of terminals without any set principles as regardsthe encoding (provided that the tools imposed for the control images arepresent). They may also be open-ended.

An embodiment of the invention also pertains to a terminal for decodinga digital image signal, implementing a variable-complexity decoding asdescribed here above.

Such a terminal comprises especially:

-   -   means for identifying, among said images, first images called        control images, and second images called intermediate images;    -   means for applying, to each of said control images, at least one        predetermined decoding tool dictated by said signal;    -   means for applying, to at least one of said intermediate images,        at least one decoding tool selected by said decoding terminal        and not dictated by said signal.

An embodiment of the invention also pertains to a computer programproduct downloadable from a communications network and/or recorded on acomputer-readable carrier and/or executable by a processor,characterized in that it comprises program code instructions forimplementing the decoding method described here above.

An embodiment of the invention also pertains to a method for encoding adigital image signal that is to be decoded in at least one decodingterminal implementing a variable-complexity decoding according tocertain embodiments of the method described here above.

This encoding method comprises especially the following steps:

-   -   identifying, among said images, first images called control        images, and second images called intermediate images, each of        said control images having to be processed, in said decoding        terminal or terminals, by at least one predetermined decoding        tool, and at least one of said intermediate images being capable        of being processed by at least one decoding tool selected by a        decoding terminal;    -   inserting, into said signal, at least one piece of information        identifying said control images.

This piece of information on identification makes it possible, whendecoding, to distinguish the control images which undergo an imposeddecoding and the intermediate images which the terminal is free todecode as it wishes, according to its means.

In a first particular embodiment, said insertion step comprises a stepfor encoding a field of identification data associated with each of saidimages.

Thus, in starting the processing of a current image by reading thisfield of identification data, the decoder knows whether it is a controlimage or an intermediate image.

According to a second embodiment, said insertion step comprises a stepfor encoding a preamble data field defining the structure of said signalin terms of distribution of said control images and said intermediateimages.

In this case, when the decoder starts processing the signal, it knowsthose images of the stream that will be control images. This data fieldcan be repeated periodically, especially for the signals to which aterminal can get connected at any point in time during broadcasting.

According to one particular aspect of an embodiment of the invention,said insertion step comprises a step of decoding, for at least one ofsaid control images, of a piece of information of a decoding typedefining said decoding tool or tools that have to be used for thedecoding of said control image or images.

It is thus possible to propose different encoding operations for thecontrol images according to need.

Should one of said decoding terminals selectively implement a pluralityof sequences of decoding tools each comprising at least one of saidtools, this information on type of decoding can designate one of saidsequences of decoding tools.

An embodiment of the invention furthermore pertains to a device forencoding a digital image signal implementing the method presented hereabove and comprising:

-   -   means for identifying, among said images, first images called        control images, and second images called intermediate images,        each of said control images having to be processed, in said        decoding terminal or terminals, by at least one predetermined        decoding tool, and at least one of said intermediate images        being capable of being processed by at least one decoding tool        selected by a decoding terminal;    -   means for inserting, into said signal, at least one piece of        information identifying said control images.

An embodiment of the invention also pertains to a computer programproduct downloadable from a communications network and/or recorded on acomputer-readable carrier and/or executable by a processor,characterized in that it comprises program code instructions forimplementing the decoding method described here above.

An embodiment of the invention also pertains to a digital image signalproduced by the encoding method described here above and designed to bedecoded in at least one decoding terminal implementing avariable-complexity decoding making it possible to select at least onedecoding tool from among at least two available decoding tools.

A signal of this kind comprises first images, called control images, andsecond images, called intermediate images, each of said control imageshaving to be processed in said decoding terminal or terminals by atleast one predetermined decoding tool and at least one of saidintermediate images being capable of being processed by at least onedecoding tool selected by a decoding terminal and at least one piece ofinformation for identifying said control images.

According to certain embodiments, such a signal may include firstlynon-degradable information and secondly degradable information obtainedby spatial prediction and/or temporal prediction on the basis of atleast one piece of degradable or non-degradable piece of information.

An embodiment of the invention finally pertains to a data carriercarrying at least one digital image signal of this kind.

BRIEF DESCRIPTION OF THE DRAWINGS

Other features and advantages should appear more clearly from thefollowing description given by way of a simple and non-exhaustiveillustrative example, and from the appended drawings of which:

FIG. 1 illustrates the general principle of an embodiment of theinvention with three possible parts or sequences of decoding;

FIG. 2 presents an example of an encoding scheme known per se;

FIG. 3 shows a decoding scheme, also known, adapted through the encodingof FIG. 2;

FIG. 4 is a schematic illustration of the distinguishing of the controlimages and intermediate images according to an embodiment of theinvention;

FIG. 5 is a scheme of an example of decoding according to an embodimentof the invention adapted to the encoding of FIG. 2.

DETAILED DESCRIPTION OF ILLUSTRATIVE EMBODIMENTS 1. Reminder of thePrinciple of an Embodiment of the Invention

An embodiment of the invention therefore proposes an innovative approachto the problem of scalability in complexity. From the same quantity ofinformation received, each decoder can choose the decoding complexitythat it can support and/or corresponds to a quality required by theuser, by using certain tools rather than others for the decodingoperations.

This approach is particularly but not exclusively worthwhile in thecontext of video applications designed for terminals of differentdecoding capacities (for example mobile terminals).

The process of decoding a stream comprises a process for readinginformation contained in the stream (this process corresponds tosyntactic decoding) and a process for rebuilding data on the basis ofthe information read. An embodiment of the invention is independent ofthe information-reading process and can be applied to the rebuildingprocess performed during the decoding.

It must therefore be noted that an embodiment of the invention appliesto any data-compression standard whatsoever, especially video, whetheror not it is scalable. Contrary to current approaches proposed forscalability, an embodiment of the invention proposes an approach toscalability in complexity in the operations implemented during therebuilding process performed at decoding, independently of the syntaxused to encode and transmit the video stream.

Thus, an embodiment of the invention differs from the prior-arttechniques used to adapt complexity to the decoding of a stream, whichhave the drawback of imposing this choice on the encoder or of rapidlygoing into drift.

In particular, the approach of an embodiment of the invention differsfrom that of SVC and other prior-art scalable systems by proposing adecoding system in which the decoding steps can be performed with toolsof varying complexity, the choice between these tools being done solelyat the level of the decoder.

In order that this approach may be efficient and reliable, an embodimentof the invention also proposes a method for controlling the driftbetween the encoder and the decoder when less complex tools are used indecoding. This mechanism relies on the distinction between two types ofimages:

-   -   images known as control images for which the decoding processing        operation is dictated by the encoder (or by a definition, for        example a standardized definition, of the encoding);    -   images known as intermediate images which the decoding terminals        are free to decode as required (whether it is by applying a        downgraded processing or an improved processing or the same        processing as the one used for encoding).

FIG. 1 provides a general illustration of the method of decodingaccording to an embodiment of the invention. This decoding comprises acertain number of steps, such as:

-   -   step 11: decoding of residues;    -   step 12: motion compensation;    -   step 13: data synthesis.

Each step can be performed with different tools. For example, thedecoding 11 of the residues (transformed coefficients resulting from aDCT applied to the encoding) can be provided by:

-   -   a tool 111 of reduced complexity that takes account only of the        DC coefficient (direct coefficient) of the DCT transform;    -   a tool 112 of greater complexity taking account of the set of DC        and AC coefficients of the DCT.

Other tools not shown can take account only of a part of the ACcoefficients.

The motion-compensation step 12 can be implemented by:

-   -   a compensation tool 121 working up to the nearest pixel;    -   a compensation tool 122 working up to the nearest half-pixel;    -   a compensation tool 123 working up to the nearest quarter-pixel;    -   etc

The step 13 may include a single texture-synthesis tool 131 whoseimplementation is optional.

These tools, their number and their distribution are given as an exampleof the principle of an embodiment of the invention and it is clear thatvarious variants and adaptations are possible.

The decoder of an embodiment of the invention adapts its decodingprocess to the complexity of the tools that it is capable of applyingand which it has at its disposal (it is not obligatory that all thedecoders should have all the tools available, since the selection ofthese tools is not done at decoding. On the contrary, an embodiment ofthe invention provides many types of decoders, and open-ended decoders,which can be equipped with new tools, for example by downloading,without its being necessary to adapt the encoding standard).

Several paths or sequences of decoding 141, 142, 143 are then possiblewith a same data stream 15 that is received or read.

For example, the path 141, which uses the tools 111 and 121 is alow-complexity decoding path and the path 143 which uses the tools 112,123 and 131 is a high-complexity decoding path. The path 142 using thetools 112 and 122 is a medium-complexity decoding path. It can be notedthat certain tools can be shared by several paths.

One of the paths may be compatible with decoding path defined by anycompression standard whatsoever, for example H.264/AVC.

In order to control the drift between the encoder and the decoder, anembodiment of the invention provides that certain predetermined images,called control images, will be decoded in following an imposed,predetermined path. For example, the path 141 will be used obligatorilyfor the decoding of these images, whatever the processing capacitiesavailable for the decoder.

These control images control the drift between the encoder and thedecoder. The path followed by the control images is not necessarily thepath of minimum complexity nor is it necessarily that of the maximumlevel of complexity. It can be the same for all the control images or itmay vary according to the type or temporal level of the control image orit may be specified for each image by the encoder.

By contrast, the decoding is not dictated for the other images known asintermediate images. Hence, for these images, the decoder chooses themost suitable path according to criteria such as resources, the toolsavailable to it, a request by the user, a size of rendered image etc.

2. Example Implementation

An embodiment of the invention can be applied especially to all videoencoders. The embodiment described here below applies especially in thecontext of the deliberations and work of drafting the future H.265standard. However, the syntax of the encoder used is not specified sincethe decoding mechanism described can be applied to all existing videoencoders.

2.1 General Encoding Scheme

As already indicated, an embodiment of the invention makes it possiblenot to dictate special conditions for encoding (except in certainembodiments where there is an explicit identification of the controlimages and/or an explicit indication of the decoding path to be used forthese images).

The encoder therefore uses a classic scheme based on intra-image andinter-image prediction, for example an H.264 encoder. “I” images areencoded by spatial prediction while “P” and “B” images are encoded byspatial or temporal prediction relative to other “encoded/decoded orsynthesized I”, “P” or “B” images. These synthesized images used fortemporal prediction are created for example by a textural synthesismechanism.

The images are subdivided into blocks. For each block, a residual blockis encoded corresponding to the original block minus a prediction. Thecoefficients of this block are quantified after transformation as thecase may be, and then encoded by an entropic encoder.

FIG. 2 recalls the general principle of such encoding.

The images to be encoded 21 are provided at input of a decision module22 for deciding on the type of encoding. If the image to be encoded isan “I” image, it is subdivided into blocks and encoded by spatialprediction only. Each block of the image is encoded (23) by usingspatial prediction. The prediction for this block is formed out ofencoded-decoded blocks within the current image. The residues comingfrom the difference between the block and the prediction aretransformed, quantified and encoded by an entropic encoder.

The image is rebuilt by performing (24) the operations in reverse:entropic decoding, inverse quantification, inverse transformation,adding the prediction. The rebuilt image undergoes a step 25 forreducing the effects of blocks implemented by means of filtering, andthen it is added to the list 26 of reference images.

If the image to be encoded is a “P” or “B” image, the motion estimationmodule of the encoding 27 computes the motion between the current imageto be encoded and one or more reference images contained in the list 26of the reference images. The motion estimation module 27 gives themotion parameters (motion vectors, reference images used) to the modulefor computing the prediction 28.

An analysis/synthesis step 29 can also be performed on the basis of theimage of the list of reference images in order to create a synthesizedimage that can serve for prediction. The analysis 291 computes theparameters needed for the synthesis (creation) 29 of a new image(synthesized image).

For each block of the image to be encoded, the decision module 22chooses the best prediction from among the possible predictions:temporal prediction on the basis of one or more reference images,spatial prediction or prediction based on the synthesized image. Theresidues coming from the difference between the block and the predictionare transformed, quantified and encoded by an entropic encoder.

If the image must serve as a reference for a future image to be encoded,the encoded image is rebuilt (24) by performing the operations inreverse: inverse quantification, inverse transformation, adding of theprediction. The rebuilt image undergoes a step of reduction of thedifferent block effects implemented by means of filtering and then it isadded to the list of the reference images.

The encoded signal 210, of bit stream, can then be transmitted orstored. Other preliminary bit-rate reduction processing operations, suchas an entropic encoding, are possible. More generally, other encodingmeans may be used.

2.2 General Decoding Scheme

FIG. 3 illustrates the general mechanism of decoding. The bit-streamreceived 31 is sent to a syntactic decoder 32 which carries out theentropic decoding of the data of the current image. For each block ofthe image to be rebuilt, the coefficients are sent to the module 33which carries out the inverse quantification and the inversetransformation. The prediction of each block is computed (34) and thenadded (35) to the rebuilt residues. The syntactic decoder 32 alsoextracts information needed for the prediction, for example motionparameters, synthesis parameters, types of prediction etc.

If the image serves a reference for a future image to be decoded, itthen undergoes a step 36 for reducing block effects implemented by meansof filtering operations, and then it is added to the list of referenceimages. It will be noted that certain steps of the decoding are alsopresent in the encoding mechanism: inverse quantification, inversetransformation, computation of prediction, reduction of block effects.

A post-processing operation can be applied to the rebuilt images inorder to improve the quality of rendering of these images independentlyof the other images (not shown in FIG. 3).

2.3 Variable-Complexity Decoding.

Independently of the tools used for the encoding of the images, eachdecoder of an embodiment of the invention can adapt its decodingcomplexity by choosing, for each step of the decoding, tools that aremore complex or less complex than those used for the encoding.

For example, the following operations can be performed with variablecomplexity:

-   -   during the spatial prediction: the prediction can be formed out        of a block for which all the coefficients have been rebuilt or        else from a block of which only the direct coefficient or the        low-frequency coefficients have been rebuilt;    -   during the temporal prediction: a motion compensation of the        reference images is done. In the event of sub-pixel motions,        this motion compensation calls for an interpolation of the        reference image by means of an interpolation filter, the size of        the filter used causes the complexity to vary. The longer the        filter, the more complex will be the interpolation operation;    -   the precision of the motion has an impact on the complexity of        the prediction. A sub-pixel motion calls for an interpolation        relative to a pixel motion;    -   in order to improve the quality of the images serving as a        reference, a block-effect-reduction step can be applied to the        reference images before they are stored in the list, this step        is implemented by means of filtering operations, and the decoder        cannot do these filtering operations or make a less complex        version of them;    -   the motion module used plays on the complexity of the motion        compensation: a translation calls for simple operations of        addition while a refined transformation (i.e. in an open-ended        model of the video encoder) implies more complex operations of        multiplication. The decoder can then take a simplified model of        motion to reduce the complexity;    -   the precision or binary resolution, of the computations made        also affects the complexity of the operations. The greater the        precision, the greater the memory space need for the data (for        example, computations of greater precision are implemented for        images with dynamic ranges of color levels on 12 bits than for        images with color levels on 8 bits);    -   the synthesis step to create synthesized images that can serve        for prediction may be complex to carry out according to the        algorithm chosen, the complexity of the algorithm often going        together with its performance. This step may be even completely        eliminated from the decoding of the current image and replaced        by a less complex prediction mode (for example an intra-image        mode of prediction or prediction by motion compensation of the        SKIP type).

These different possibilities of choice of complexity and otherpossibilities make it possible to define the tools illustrated in FIG. 1in a manner adapted to each decoder. It can be understood that thesetools are not necessarily modules that are completely independent of oneanother, as was illustrated in FIG. 1 for reasons of simplicity of theexplanation, but may correspond to one and the same module, parametrizeddifferently (for example in terms of number of bits taken into account,number of DCT coefficients processed etc).

2.4 Control Images

The following section explains the mechanism of controlling driftaccording to an embodiment of the invention in a variable-complexitydecoder.

a) Drift Control

To prevent any drift in the signal rebuilt at the decoder, classicencoders work in a closed loop, i.e. the temporal prediction or spatialprediction at the encoder is done by means of images or parts of thecurrent image that are encoded-decoded.

An embodiment of the invention overcomes this constraint (at least on apart of the images to decoded).

Indeed, according to an embodiment of the invention, the encoder cannotpredict the quality of each image rebuilt by each decoder (the encodercan predict only maximum quality, obtained when the decoder decodes atthe “nominal” complexity level). Indeed, depending on its resources orneeds, a decoder can choose to perform the decoding steps with a lowercomplexity than those performed at encoding.

The images that will be rebuilt at the decoder will therefore bedifferent from those rebuilt at the encoder and the images used forprediction at the decoder will be different from those used at theencoder. There is therefore a risk of drift.

In order to control this potential drift between the encoder and thedecoder, the encoder (implicitly or explicitly) obliges the decoder todecode certain images with a determined level of complexity so as tohave a stable reference available regularly (the images decoded at thedecoder are in this case identical to those encoded-decoded by theencoder). Here these images are called control images.

It will be noted that, for a control image, the decoder can additionallydecode an image with a higher level of complexity, for example forpurposes of displaying an image of better quality. The decoder thenproduces two outputs for this image:

-   -   a version with controlled complexity used by the sequence of        reference images for decoding other images, and    -   a version of free complexity that can serve to display or again        as the reference image for images other than the control image.

b) Signaling of the Control Images

An embodiment of the invention optionally proposes a signaling todistinguish the control images from the other images of the stream. Thissignaling can be done explicitly or implicitly.

An explicit signaling can be done:

-   -   by the insertion of a “degradable image” flag (called for        example “fast_decoding_allowed_flag”) into the syntax of the        current image, a value “TRUE” indicating that the decoding of        this image is not essential and can therefore be downgraded. A        value “FALSE” indicates that the decoding process of this image        is dictated. It must be noted that this flag is different from        the notion of reference images (images used for the prediction        of other images) existing in compression standards, because a        reference image can also be marked as “degradable”;    -   by the insertion of an index of decoding complexity for each        image. A particular value (for example: −1) indicating that the        image must be decoded along the predetermined path, another        particular value (example: “any”) indicating that the image can        be stored at an arbitrary level, the standard values (example:        0, 1, 2, . . . ) indicating the level of complexity at which        this image can be decoded.

An embodiment of the invention can also be applied to existingstandards, by the addition of a signaling of the degradable or essentialcharacter (for the control images) of the images. This signal may forexample be done by means of SEI messages in MPEG-4 AVC, or moregenerally through generic “user data” fields.

The implicit signaling can thus be done without adding any syntax to theexisting syntax (for example that of an existing compression standard).The control images are then determined by:

-   -   a particular value of the reference image syntax element in        MPEG-4 AVC (Nal_Ref_Idc);    -   the decoding syntax element with the minimum scalable MPEG-4 AVC        quality or the temporal level syntax element, or the priority        level syntax element for an image;    -   the type of current image: “I” or “P”.

In another variant, the list of control images, or the means used tolocate them, may be defined in a descriptor present at the start of thestream and/or given periodically.

It must be noted that it is not obligatory for all the control images tobe processed in the same way. The signaling can also indicate theparticular path to be used for each control image (or for a set ofcontrol images).

c) Variable-Complexity Decoding with Control Images

At the decoding, depending on its capacities, and taking account of thesignaling if any, the decoder can choose the complexity of the decodingoperation that it wishes to perform.

More specifically, for the images that are not control images and foreach step of decoding such an image, it choose the tool to be used,among the tools possible for this step, as a function especially of thecomplexity of each tool. In other words, the decoder has the choice ofdecoding path, or sequence (FIG. 1).

However, for certain predetermined images, i.e. the control images, thedecoder will routinely choose the tools associated with the nominalcomplexity dictated by the encoder for the storage of the referenceimage or those defined by the video compression standard with which itis complying.

This approach is illustrated by FIG. 4. If the image is a control image(test 41), the dictated path used by the encoder is identified (42)(either implicitly or explicitly as specified here above). If this isnot the case, this is an image known as the intermediate image and thedecoder can select (43) the most suited path and for example a path oflower quality if the decoder has limited resources.

Then, the decoding 44 is done along the identified path. If it is acontrol image, it is stored (45) for use during the decoding of thefollowing images so as to prevent drift.

Optionally, the decoder can use a second level (in principle a higherlevel) of complexity of the tools to rebuild a second image 46(typically intended for display or usable for the prediction of an imagewhich might not be a control image).

The decoded images are then restored (47) on a screen.

FIG. 5 illustrates the decoding mechanism modified according to anembodiment of the invention by comparison with the mechanism of FIG. 3.The dotted arrows show the optional paths that the decoding method canfollow depending on the image that it must decode and the resources ofthe decoder.

Thus, the decoding can for example have three types of predictioncomputation, 511, 512 and 513 having different levels of complexity (themodule 511 corresponds for example to the module 35 of FIG. 3, and canbe imposed for the control images.

Optional steps for modules can be provided, for example a synthesismodule 52 that feeds the prediction modules 511, 512 and 513 and/or thepost-processing modules 43 for improvement of the image (for example byfiltering).

It can be also noted that other modules such as block effect reducingmodules 36 become optional for all the intermediate images (images thatare not control images).

The syntactic decoding 32 can deliver information on the type of imageespecially report control images (and as the case may be the decodingpath to be used for these images) if these information elements are notimplicit.

It can be understood that FIG. 5 gives only one example among manypossible examples as one of the advantages of an embodiment of theinvention is that it allows for easy coexistence of several types ofdecoders of different levels of complexity. It is therefore easy to addor eliminate the modules or steps or to parametrize them differently todefine different decoders (provided that these decoders have minimummeans to process the control images).

For example, a very simple decoder could have no more than two paths,the dictated path for the control images and a simplified path ordowngraded path for the intermediate images. By contrast, a “top-range”decoder will, in addition to the path dictated for the control images,have at least one higher-quality path which it could use both for theintermediate images and for the control images in order to restore them(the dictated path continuing to be used to decode the followingimages).

The plurality of paths available in such a decoder will make it possibleto optimize the decoding according to the type of image (motion, colorsetc), the type of contents (film, sports, documentaries, etc), anavailable transmission bit-rate, a screen size or a selected resolution,a user's request etc.

The approach of an embodiment of the invention makes it possible toprovide new decoders using improved decoding techniques (for example anew filter) without modifying the encoding. It is also possible toupdate decoders, for example by downloading a new tool, or a newsequence of tools, again without acting on the encoding process.

Although the present disclosure has been described with reference to oneor more examples, workers skilled in the art will recognize that changesmay be made in form and detail without departing from the scope of thedisclosure and/or the appended claims.

1. A method for decoding a digital image signal in a decoding terminal,implementing a variable-complexity decoding, making it possible, for atleast one step of the decoding, to select at least one decoding toolfrom among at least two available decoding tools, wherein the methodcomprises: identifying, among said images, first images called controlimages and second images called intermediate images; applying, to eachof said control images, for at least one step of the decoding, at leastone predetermined decoding tool dictated by said signal; and applying,to at least one of said intermediate images, for at least one step ofthe decoding, at least one decoding tool selected by said decodingterminal and not dictated by said signal.
 2. The method for decodingaccording to claim 1, wherein said signal comprises firstly pieces ofnon-degradable information and secondly pieces of degradable informationand wherein said step of identifying considers at least said pieces ofnon-degradable information to be control images.
 3. The method fordecoding according to claim 1, wherein said step of identifyingcomprises reading, in said signal, at least one piece of informationidentifying said control images.
 4. The method for decoding according toclaim 1, wherein said step of identifying includes reading, in saidsignal, at least one piece of processing information for at least one ofsaid control images, specifying said predetermined decoding tool ortools to be applied to said control image.
 5. The method for decodingaccording to claim 1, wherein the method selectively implements aplurality of sequences of decoding tools each comprising at least one ofsaid tools, and wherein said steps of applying use, for each of saidimages, one of said sequences of decoding tools.
 6. The method fordecoding according to claim 1, wherein said tools belong to the groupcomprising: spatial prediction tools taking account of all or part offrequency coefficients of at least one part of at least one image;temporal prediction tools using interpolation filters of differentsizes; tools for taking account of pixel or subpixel motion; blockeffect filtering tools; motion compensation tools using different motionmodels; image synthesis tools; at least two tools providing for a samedecoding function and using different levels of binary representation.7. A terminal for decoding a digital image signal, implementing avariable-complexity decoding making it possible, for at least one stepof decoding, to select at least one decoding tool from among at leasttwo available decoding tools, wherein the terminal comprises: means foridentifying, among said images, first images called control images, andsecond images called intermediate images; means for applying, to each ofsaid control images, at least one predetermined decoding tool dictatedby said signal; and means for applying, to at least one of saidintermediate images, for at least one step of the decoding; at least onedecoding tool selected by said decoding terminal and not dictated bysaid signal.
 8. A computer program product recorded on a non-transitorycomputer-readable carrier and executable by a processor, wherein theproduct comprises program code instructions for implementing a method ofdecoding a digital image signal in a decoding terminal, implementing avariable-complexity decoding, making it possible, for at least one stepof the decoding, to select at least one decoding tool from among atleast two available decoding tools, when said instructions are executed,wherein the method comprises: identifying, among said images, firstimages called control images and second images called intermediateimages; applying, to each of said control images, for at least one stepof the decoding, at least one predetermined decoding tool dictated bysaid signal; and applying, to at least one of said intermediate images,for at least one step of the decoding, at least one decoding toolselected by said decoding terminal and not dictated by said signal.
 9. Amethod for encoding a digital image signal that is to be decoded in atleast one decoding terminal implementing a variable-complexity decodingmaking it possible, for at least one step of the decoding, to select atleast one decoding tool from among at least two available decodingtools, wherein the method comprises: identifying, among said images,first images called control images, and second images calledintermediate images, each of said control images having to be processed,in said decoding terminal or terminals, for at least one step of thedecoding, by at least one predetermined decoding tool, and at least oneof said intermediate images being capable of being processed, for atleast one step of the decoding, by at least one decoding tool selectedby a decoding terminal; and inserting, into said signal, at least onepiece of information identifying said control images.
 10. A device forencoding a digital image signal that is to be decoded in at least onedecoding terminal implementing a variable-complexity decoding making itpossible, for at least one step of the decoding, to select at least onedecoding tool from among at least two available decoding tools, whereinthe device comprises: means for identifying, among said images, firstimages called control images, and second images called intermediateimages, each of said control images having to be processed, in saiddecoding terminal or terminals, for at least one step of the decoding,by at least one predetermined decoding tool, and at least one of saidintermediate images being capable of being processed, for at least onestep of the decoding, by at least one decoding tool selected by adecoding terminal; and means for inserting, into said signal, at leastone piece of information identifying said control images.
 11. A computerprogram product recorded on a non-transitory computer-readable carrierand executable by a processor, wherein the product comprises programcode instructions for implementing a method of encoding a digital imagesignal that is to be decoded in at least one decoding terminalimplementing a variable-complexity decoding making it possible, for atleast one step of the decoding, to select at least one decoding toolfrom among at least two available decoding tools, when the instructionsare executed, wherein the method comprises: identifying, among saidimages, first images called control images, and second images calledintermediate images, each of said control images having to be processed,in said decoding terminal or terminals, for at least one step of thedecoding, by at least one predetermined decoding tool, and at least oneof said intermediate images being capable of being processed, for atleast one step of the decoding, by at least one decoding tool selectedby a decoding terminal; and inserting, into said signal, at least onepiece of information identifying said control images.
 12. A methodcomprising: generating with a device a digital image signal that is tobe decoded in at least one decoding terminal implementing avariable-complexity decoding making it possible, for at least one stepof the decoding, to select at least one decoding tool from among atleast two available decoding tools, wherein the signal comprises: firstimages, called control images, and second images, called intermediateimages, each of said control images having to be processed, in saiddecoding terminal or terminals, for at least one step of the decoding,by at least one predetermined decoding tool, and at least one of saidintermediate images being capable of being processed, for at least onestep of the decoding, by at least one decoding tool selected by adecoding terminal, and at least one piece of information for identifyingsaid control images; and transmitting or storing the digital signal withthe device.
 13. The method according to claim 12, wherein said signalcomprises firstly, non-degradable information and, secondly, degradableinformation obtained by spatial prediction and/or temporal prediction onthe basis of at least one piece of degradable or non-degradable piece ofinformation.
 14. A non-transitory data carrier carrying at least onedigital image signal that is to be decoded in at least one decodingterminal implementing a variable-complexity decoding making it possible,for at least one step of the decoding, to select at least one decodingtool from among at least two available decoding tools, wherein saidsignal comprises first images, called control images, and second images,called intermediate images, each of said control images having to beprocessed, in said decoding terminal or terminals, for at least one stepof the decoding, by at least one predetermined decoding tool, and atleast one of said intermediate images being capable of being processed,for at least one step of the decoding, by at least one decoding toolselected by a decoding terminal, and at least one piece of informationfor identifying said control images.